import { Disposable, InjectionToken } from "tsyringe";
export const ROBOT_APP_PAGE: InjectionToken<RobotAppPage> = `ROBOT_APP_PAGE`;
export abstract class RobotAppPage implements Disposable {
    abstract get title(): string;
    /**
     * 页面销毁注销
     */
    abstract dispose(): void;
    /**
     * 是否在指定APP内生效
     * @param packageName string
     */
    abstract is(packageName: string): boolean;
    /**
     * 是否处理此类事件
     * @param activityName 
     */
    abstract accept(activityName: string): boolean;
    /**
     * 进入页面
     * @param activityName 
     */
    abstract in(latestPackage?: string): boolean;
    /**
     * 离开页面
     * @param ctx 
     */
    abstract out(): boolean;
}
